home *** CD-ROM | disk | FTP | other *** search
/ Aminet 37 / Aminet 37 (2000)(Schatztruhe)[!][Jun 2000].iso / Aminet / dev / basic / PureBasic.lha / PureBasic_Demo / PureBasic / Compilers / PureBasic.asm < prev    next >
Encoding:
Assembly Source File  |  2000-01-28  |  1.7 KB  |  99 lines

  1. ;
  2. ; PureBasic Demo V1.30 generated code
  3. ;
  4. ; © 2000 Fantaisie Software
  5. ;
  6.         MOVEM.l d0-d7/a0-a6,-(a7)
  7. ;
  8. ; CreateBank()
  9. ;
  10.         MOVEQ   #16,d0
  11.         JSR    _PB_AllocVec
  12.         MOVE.l  d0,a4
  13.  
  14. ; structure fred
  15. ;  a.l
  16. ;  b.l
  17. ; endstructure
  18. ; newlist a.fred()
  19.         LEA.l   4(a4),a5
  20.         MOVE.l  #8,d2
  21.         JSR    _PB_NewList
  22. ; a()\b = *a.fred\b
  23.         MOVE.l  12(a4),a5
  24.         MOVE.l  8(a4),a5
  25.         MOVE.l  4(a5),12(a5)
  26. _PB_EOP
  27. ;
  28. ; CallEndFuncs()
  29. ;
  30. ;
  31. ; FreeList()
  32. ;
  33.         LEA.l  _PB_FreeListData(pc),a5
  34.         MOVE.l  #0,d4
  35. _PB_FreeListLoop:
  36.         MOVE.w  (a5)+,d0
  37.         MOVE.l  0(a4,d0.w),a0
  38.         JSR    _PB_KillList
  39.         DBRA    d4,_PB_FreeListLoop
  40.  
  41. ;
  42. ; RemoveBank()
  43. ;
  44.         MOVEA.l $4,a6
  45.         MOVE.l  a4,a1
  46.         JSR    -690(a6)
  47. ;
  48. ; End Of Program
  49. ;
  50.         MOVEM.l (a7)+,d0-d7/a0-a6
  51.         RTS
  52. ;
  53. _PB_AllocVec
  54.         MOVE.l  #65536,d1
  55.         MOVE.l  $4,a6
  56.         JMP    -684(a6)
  57. ;
  58. _PB_FreeVec
  59.         MOVE.l  $4,a6
  60.         JMP    -690(a6)
  61. _PB_FreeListData
  62.         DC.w    4
  63.  
  64. _PB_KillList:
  65.         MOVE.l  a0,d0
  66.         BEQ    _PB_SkipKillList
  67.         MOVE.l  14(a0),a0
  68.         MOVE.l  a0,d0
  69.         BEQ    _PB_SkipKillList
  70.         MOVE.l  $4,a6
  71.         JMP    -702(a6)
  72. _PB_SkipKillList:
  73.         RTS
  74.  
  75. _PB_NewList:
  76.         MOVE.l  $4,a6
  77.         JSR    _PB_CreatePool
  78.         MOVE.l  d0,d3
  79.         MOVE.l  d0,a0
  80.         MOVEQ   #22,d0
  81.         JSR    -708(a6)
  82.         MOVE.l  d0,a0
  83.         MOVE.l  d2,(a0)+
  84.         MOVE.l  a0,d0
  85.         MOVE.l  d0,(a5)+
  86.         CLR.l   (a5)
  87.         MOVE.l  d0,8(a0)
  88.         ADDQ.l  #4,d0
  89.         MOVE.l  d0,(a0)
  90.         MOVE.l  d3,14(a0)
  91.         RTS
  92.  
  93. _PB_CreatePool:
  94.         MOVE.l  #65536,d0
  95.         MOVEQ   #127, d1
  96.         MOVE.l  d1,d2
  97.         JMP    -696(a6)
  98.         Even
  99.